Towards Automated Bounded Model Checking of API Implementations

نویسندگان

  • Daniel Neville
  • Andrew Malton
  • Martin Brain
  • Daniel Kroening
چکیده

We introduce and demonstrate the viability of a novel technique for verifying that implementations of application program interfaces (APIs) are bug free. Our technique applies a new abstract interpretation to extract an underlying model of API usage, and then uses this to synthesise a set of verifiable program fragments. These fragments are evaluated using CBMC and any potentially spurious property violation is presented to a domain expert user. The user’s response is then used to refine the underlying model of the API to eliminate false positives. The refinement-analysis process is repeated iteratively. We demonstrate the viability of the technique by showing how it can find an integer underflow within Google’s Brotli, an underflow that has been shown to lead directly to allow remote attackers to execute arbitrary code in CVE 2016-1968.

منابع مشابه

Towards Symbolic Causality Checking using SAT-Solving

With the increasing size and complexity of modern safety critical embedded systems, the need for automated analysis methods is growing as well. Causality Checking is an automated technique for formal causality analysis of system models. In this paper we report on work in progress towards an Symbolic Causality Checking approach. The proposed approach is based on bounded model checking using SAT ...

متن کامل

Automated Symbolic Analysis of ARBAC-Policies

One of the most widespread framework for the management of access-control policies is Administrative Role Based Access Control (ARBAC). Several automated analysis techniques have been proposed to help maintaining desirable security properties of ARBAC policies. One limitation of many available techniques is that the sets of users and roles are bounded. In this paper, we propose a symbolic frame...

متن کامل

TCP , UDP , and Sockets : rigorous and experimentally - validated behavioural specification

We have developed a mathematically rigorous and experimentally-validated post-hoc specification of the behaviour of TCP, UDP, and the Sockets API. It characterises the API and network-interface interactions of a host, using operational semantics in the higher-order logic of the HOL automated proof assistant. The specification is detailed, covering almost all the information of the real-world co...

متن کامل

TCP, UDP, and Sockets: rigorous and experimentally-validated behavioural specification : Volume 1: Overview

We have developed a mathematically rigorous and experimentally-validated post-hoc specification of the behaviour of TCP, UDP, and the Sockets API. It characterises the API and network-interface interactions of a host, using operational semantics in the higher-order logic of the HOL automated proof assistant. The specification is detailed, covering almost all the information of the real-world co...

متن کامل

Automated Symbolic Analysis of ARBAC-Policies (Extended Version)

One of the most widespread framework for the management of access-control policies is Administrative Role Based Access Control (ARBAC). Several automated analysis techniques have been proposed to help maintaining desirable security properties of ARBAC policies. One limitation of many available techniques is that the sets of users and roles are bounded. In this paper, we propose a symbolic frame...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

متن کامل
عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2016